package com.gitee.wsl.compose.mvi.ui.iconbutton

import com.gitee.wsl.compose.mvi.ui.icon.IconInteractor
import com.gitee.wsl.compose.mvi.component.base.Interactor
import com.gitee.wsl.compose.mvi.modifiable.interactable.InteractableModifier

data class IconButtonInteractor(
    override val modifier: InteractableModifier = InteractableModifier,

    /**
     *  Whether or not this IconButton will handle input events and appear enabled for semantics purposes
     */
    val enabled: Boolean = true,

    /**
     * The [Interactor] for the icon.
     */
    val icon: IconInteractor,

    /**
     * The lambda to be invoked when this icon is pressed
     */
    val onClick: () -> Unit,
) : Interactor(modifier)